//
// Created by ChaoDONG on 2021-03-17.
//

// talkback.c -- nosy, informative program
#include <stdio.h>

#include <string.h> /*  提供strlen()函数的原型 */

#define DENSITY 62.4 /* 用C预处理器把字符常量DENSITY定义为62.4,人体密度（单位：磅/立方英尺） */

int main()
{
    float weight, volume;

    int size, letters;

    char name[40]; /*  name是一个可容纳40个字符的数组 */

    /* 用数组（array）储存字符串（character string）。在该程序中，用户输
    入的名被储存在数组中，该数组占用内存中40个连续的字节，每个字节储存
    一个字符值，char表明每个元素的类型。 */

    printf("Hi! What's your first name?\n");

    scanf("%s", name);

    printf("%s, what's your weight in pounds?\n", name);

    scanf("%f", &weight);

    size = sizeof(name);

    letters = strlen(name);

    /*  用C函数strlen()获取字符串的长度。 */

    volume = weight / DENSITY;

    printf("Well, %s, your volume is %2.2f cubic feet.\n",
           name, volume);

    printf("Also, your first name has %d letters,\n",
           letters);

    printf("and we have %d bytes to store it.\n", size);

    return 0;
}